console.log("最通常的 1 + 1 =", 1+1);
console.log('88 + NaN =', 88+NaN);
console.log('Infinity + -Infinity =', Infinity + -Infinity);
console.log('Infinity + Infinity =', Infinity + Infinity);
console.log('-Infinity + -Infinity =', -Infinity + -Infinity);
console.log('+0 + +0 =', +0 + +0);
console.log('-0 + -0 =', -0 + -0);
console.log('+0 + -0 =', +0 + -0);
console.log(`'Hello ' + 'World' =`, 'Hello ' + 'World');
console.log(`'10' + 10.10 =`, '10' + 10.10);
console.log(`'1' + 2 + 3 + 4 =`, '1' + 2 + 3 + 4);
console.log(`1 + 2 + 3 + '4' =`, 1 + 2 + 3 + '4');
console.log(`1 + (2 + '3') + 4 =`, 1 + (2 + '3') + 4);
console.log(`'1' + NaN =`, '1' + NaN);
console.log(`'1' + Infinity =`, '1' + Infinity);
console.log(`'1' + -Infinity =`, '1' + -Infinity);
console.log(`'1' + true =`, '1' + true);
console.log(`'1' + false =`, '1' + false);
console.log(`'1' + undefined =`, '1' + undefined);
console.log(`'1' + null =`, '1' + null);
console.log(`'1' + [] =`, '1' + []);
console.log(`'1' + [123] =`, '1' + [123]);
console.log(`'1' + [,,,] =`, '1' + [,,,]);
console.log(`'1' + [123, 456, 789, 'aaa'] =`, '1' + [123, 456, 789, 'aaa']);
console.log(`'1' + function uu(){var a = 1;} =`, '1' + function uu(){var a = 1;});
console.log(`'1' + {} =`, '1' + {});
console.log(`'1' + {a: 1} =`, '1' + {a: 1});
console.log(`11 + true =`, 11 + true);
console.log(`11 + false =`, 11 + false);
console.log(`[] + 1 =`, [] + 1);
console.log(`[123] + 1 =`, [123] + 1);
console.log(`[123, 456, 789] + 1 =`, [123, 456, 789] + 1);
// 前面的, 如果有，省略成1个。
console.log(`[, 2, ,] + 1 =`, [, 2, ,] + 1);
console.log(`[, , , , , , , 2, ,] + 1 =`, [, 2, ,] + 1);
console.log(`[12, 12] + function(){var a = 0} =`, [12, 12] + function(){var a = 0});
console.log(`[] + function(){var a = 0} =`, [] + function(){var a = 0});
console.log(`[12, 12] + {} =`, [12, 12] + {});
console.log(`[12, 12] + {a: 1} =`, [12, 12] + {a: 1});
console.log(`[1] + [2] = `, [1] + [2]);
console.log(`[] + [1, 2, 3] =`, [] + [1, 2, 3]);
console.log(`({}) + ({}) =`, ({}) + ({}));
console.log(`({}) + ({a: 1}) =`, ({}) + ({a: 1}));
console.log(`(function a(){var aa = 0} + (function b (){var bb = 0})) =`, (function a(){var aa = 0} + (function b (){var bb = 0})));
console.log(`[] + {} =`, [] + {});
// 如果用 nodejs , 那么会返回 [object Object]，如果用 console， 会返回 0；
console.log('--------------');
console.log({} + []);
console.log('--------------');

console.log(`({}) + [] =`, ({}) + []);
console.log(`(function a(){var aa = 0}) + {} =`, (function a(){var aa = 0}) + {});
console.log(`[1, 2] + function a(){var aa = 0} =`, [1, 2] + function a(){var aa = 0});
